package com.boot.noRepeatSubmitAop;

public enum KeyRuleEnum {

    // 应用场景：提交按钮重复点击
    USER_PATH("用户ID+访问路径","操作频繁请稍后再试！"),

    // 应用场景：同一用户同一接口同一数据，比如删除、编辑提交
    USER_PATH_KEY("用户ID+访问路径+指定的key","操作频繁请稍后再试！"),

    // 应用场景：防止多个用户同时对同一个数据做同一操作，比如删除、编辑提交、审核
    PATH_KEY("访问路径+指定的key","操作频繁请稍后再试！"),

    // 应用场景：同一数据只能同时执行一种操作，全局等待，如编辑提交数据时，该数据不能有其他别的操作删除、审核等都不信
    KEY("访问路径+指定的key","操作频繁请稍后再试！"),
    ;

    /**
     * key的规则说明
     **/
    private String keyRuleExplain;
    /**
     * 重复操作提示语
     **/
    private String alertMsg;

    KeyRuleEnum(String explain,String msg){
        this.keyRuleExplain = explain;
        this.alertMsg = msg;
    }


    public String getAlertMsg() {
        return alertMsg;
    }

    public static String getByEnum(KeyRuleEnum type) {

        String alertMsg1 = type.getAlertMsg();
        return alertMsg1;
    }

}
